package cn.com.mjsoft.framework.persistence.core.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * VO关联表扩展注解
 * 
 * @author MJSoft
 * 
 */
@Documented
@Target( ElementType.TYPE )
@Inherited
@Retention( RetentionPolicy.RUNTIME )
public @interface Table
{
    /**
     * 提供数据库对应的表名
     * 
     * @return
     */
    public String name();

    /**
     * 提供主键的字段名，若存在主键的情况下
     * 
     * @return
     */
    public String id();

    /**
     * 主键生成模式，一种为数据库自动生成，一种由业务代码生成
     * 
     * @return
     */
    public int idMode();

}
